// 导入封装好的基地址
import {
	BASE_URL
} from "./urls.js"

/* 
	导出一个函数，要对请求使用promise 进行封装
	1. 配置基本的url
	2. 加遮罩
	3. 对返回的数据进行处理
 */

export const request = (params) => {
	/* 
		{
			data:{},
			url:"/api/v1"
		} 
	*/
	return new Promise(function(resolver,reject) {
		// 遮罩层
		uni.showLoading({
			mask: true,
			title: "正在加载中..."
		})
		// 传进来的参数可能是一个对象，要先展开再添加
		uni.request({
			...params,
			// 拼接基地址
			url: BASE_URL + params.url,
			// 成功
			success: (res) => {
				// 解构出需要数据
				resolver(res.data)
			},
			// 失败
			fail: (err) => {
				// 捕捉失败
				reject(err)
			},
			// 不管成功或者失败
			complete: () => {
				// 隐藏遮罩层
				uni.hideLoading()
			}
		})
	})

}
